home *** CD-ROM | disk | FTP | other *** search
/ Mac Format 1994 October / Macformat17.cdr / Shareware City / Developers / shutdown-fx-201-c / sfx ƒ / sfx startup app ƒ / sfx code ƒ / sfx.c < prev    next >
Text File  |  1994-07-11  |  2KB  |  62 lines

  1. /**********************************************************************\
  2.  
  3. File:        sfx.c
  4.  
  5. Purpose:    This module is a dispatch for installing the shutdown
  6.             procs and fade module.
  7.  
  8. This program is free software; you can redistribute it and/or modify
  9. it under the terms of the GNU General Public License as published by
  10. the Free Software Foundation; either version 2 of the License, or
  11. (at your option) any later version.
  12.  
  13. This program is distributed in the hope that it will be useful,
  14. but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. GNU General Public License for more details.
  17.  
  18. You should have received a copy of the GNU General Public License
  19. along with this program in a file named "GNU General Public License".
  20. If not, write to the Free Software Foundation, 675 Mass Ave,
  21. Cambridge, MA 02139, USA.
  22.  
  23. \**********************************************************************/
  24.  
  25. #include "sfx.h"
  26. #include "sfx meat.h"
  27. #include "sfx install.h"
  28. #include "sfx gestalt.h"
  29. #include "program globals.h"
  30. #include "prefs.h"
  31.  
  32. short            gModuleIndex;
  33. char            gChooseRandom, gOnRestart, gOnShutdown, gFadeEarly;
  34.  
  35. short DoSetup(void)
  36. {
  37.     short            resultCode;
  38.     short            vRefNum;
  39.     long            dirID;
  40.     Str255            theName;
  41.     
  42.     resultCode=PreferencesInit();
  43.     if ((resultCode!=prefs_allsWell) && (resultCode!=prefs_virginErr))
  44.         return kPrefsError;
  45.     
  46.     if ((resultCode=GetAModule(&gModuleIndex, theName, &vRefNum, &dirID))!=0)
  47.         return resultCode;
  48.     
  49.     if (!sfxGestaltFunctionInstalledQQ())
  50.     {
  51.         if ((resultCode=MakeNewGestaltSelectors())!=0)
  52.             return resultCode;
  53.         if ((resultCode=InstallTheShutdownProc(theName, vRefNum, dirID, gOnShutdown,
  54.                 gOnRestart, gFadeEarly))!=0)
  55.             return resultCode;
  56.         
  57.         SaveThePrefs();
  58.     }
  59.     
  60.     return 0;
  61. }
  62.